Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

big 'ol www update #516

Merged
merged 11 commits into from
Oct 26, 2016
Merged

big 'ol www update #516

merged 11 commits into from
Oct 26, 2016

Conversation

rvagg
Copy link
Member

@rvagg rvagg commented Oct 12, 2016

For new nodejs.org server, 16.04 based rather than 14.04

@rvagg
Copy link
Member Author

rvagg commented Oct 12, 2016

I also have this in ~root for synchronizing data from the old server:

#!/bin/sh

rsync -avz --times --perms root@104.131.173.199:/home/dist/ /home/dist/ --exclude .ssh
rsync -avz --times --perms root@104.131.173.199:/home/libuv/ /home/libuv/

#NOTE: this misses out on *access.log, they should be preserved on the old server until DNS gives up
rsync -avz --times --perms root@104.131.173.199:/var/log/nginx/ /var/log/nginx/ --exclude access.log --exclude error.log --exclude iojs.org-access.log --exclude iojs.org-error.log --exclude nodejs.org-access.log --exclude nodejs.org-error.log --exclude libuv.org-access.log --exclude libuv.org-error.log

Will probably need to do that last one some time after conversion to pick up straggler DNS holdouts (thankfully cloudflare will handle most of that for us!). It's important we preserve as much of the log data for metrics even while we're serving from two hosts.

@rvagg
Copy link
Member Author

rvagg commented Oct 12, 2016

@nodejs/website @nodejs/benchmarking @saghul

We've set up a new server to host our various sites and have currently turned it on for benchmarking.nodejs.org and iojs.org. We'd also like dist.libuv.org updated to 138.197.224.240, @saghul are you the one to do that? AAAA is 2604:a880:400:d0::b2c:a001 if you have one of those.

We'll probably switch over nodejs.org to this new host (fronted by CloudFlare still) tomorrow, for now we're easing in. Please watch for problems, bug reports, people complaining, the usual signs of something wrong and let us know. Ping myself or @jbergstroem directly, IRC is a good place to get us both in a timely manner.

Will update here when we move nodejs.org over.

@rvagg
Copy link
Member Author

rvagg commented Oct 12, 2016

@jbergstroem I think I'm pretty much done with this PR, also added:

should be simpler to translate it all to your new work without all the additional config. resources/secrets/makesecrets.sh should make the secrets for you although there's stuff in host_vars that doesn't get made by that script, not sure how to deal with the extra stuff, I guess somewhere in the secrets repo?

jbergstroem

This comment was marked as off-topic.

silverwind

This comment was marked as off-topic.

silverwind

This comment was marked as off-topic.

Fishrock123

This comment was marked as off-topic.

@rvagg
Copy link
Member Author

rvagg commented Oct 13, 2016

  • added svg and changed to application/javascript in gzip_types
  • added cron job to npm update -g @jbergstroem pls have a look
  • combined the 3 JS tools into a single tools.yaml

@jbergstroem
Copy link
Member

LGTM

@rvagg
Copy link
Member Author

rvagg commented Oct 13, 2016

Task list for transition (shortly):

  • CloudFlare DNS update nodejs.org, direct.nodejs.org to 138.197.224.240 and AAAA to 2604:a880:400:d0::b2c:a001 (tho I don't know if this really does anything via CF)
  • Same for above but iojs
  • Update GitHub webhook endpoint for nodejs.org and iojs.org to the new server (if they have a hardwired IP then I'll change that to direct.nodejs.org)
  • Run a test push to nodejs.org master to make sure it updates automatically
  • Run a nightly build to check if CI release servers can access the new host
  • Run a release build and have a releaser (who is not me) attempt to promote and check that they can at least get a list of builds available
  • Point backup server to the new host
  • Change rsnapshot config to fetch log files from subdirectories of /var/log/nginx (have moved each hostname to a subdir, we can exclude old/ but I'd still like those kept somewhere other than this server even if they are a static once-off)
  • Copy remaining logs off old server to new server as DNS drains (give it ~48 hours at least although most traffic is through CF so it'll be pretty quick)

@jbergstroem pls update my comment with any additional items you can think of

@rvagg
Copy link
Member Author

rvagg commented Oct 13, 2016

@nodejs/collaborators ping, we're just about to switch over nodejs.org to a new backend server, please stay tuned to chatter about problems with the site and let us know ASAP if there are any concerns. We don't expect any of course but you never know!

@saghul
Copy link
Member

saghul commented Oct 13, 2016

Thanks for the heads up, I emails @piscisaureus since he handles the libuv DNS, hopefully that is adjusted shortly.

@piscisaureus
Copy link

done

On Wed, Oct 12, 2016 at 10:54 PM, Saúl Ibarra Corretgé <
notifications@github.com> wrote:

Thanks for the heads up, I emails @piscisaureus
https://github.com/piscisaureus since he handles the libuv DNS,
hopefully that is adjusted shortly.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#516 (comment), or mute
the thread
https://github.com/notifications/unsubscribe-auth/AANUkSEMsFk2-NG8rGBS2AYVD-nd_X8qks5qzceBgaJpZM4KUSIv
.

@rvagg
Copy link
Member Author

rvagg commented Oct 18, 2016

Just discovered the hard way that the promotion scripts were out of date and didn't handle test builds or even 0.10 and 0.12. I must have a pull request somewhere with an update that never made it in to master. Updated in latest commit.

@rvagg
Copy link
Member Author

rvagg commented Oct 20, 2016

Added coverage.nodejs.org as per nodejs/testing#36

@jbergstroem
Copy link
Member

Since you're in here, can you add the unencrypted pubkey to the root user? I guess we should use iojs or something but that's at least how it works now.

@cjihrig
Copy link
Contributor

cjihrig commented Oct 25, 2016

I am getting reports on IRC that the libuv downloads are only available over IPv4, and returning a 301 redirect over IPv6. I'm not sure if this is the right place to bring it up, or if this issue is even related. I'm just curious if anyone from the build working group can help shed some light. Thanks.

@jbergstroem
Copy link
Member

@cjihrig by looking at the config attached to this PR I would say that sounds about right: https://raw.githubusercontent.com/nodejs/build/a49c891f3b4180631a174e28056bd0395232dec8/setup/www/resources/config/libuv.org

@rvagg perhaps:

--- libuv.org   2016-10-25 12:00:04.000000000 -0300
+++ libuv.org-ipv6      2016-10-25 12:01:09.000000000 -0300
@@ -1,5 +1,6 @@
 server {
     listen *:80;
+    listen [::]:80;
     server_name dist.libuv.org;

     keepalive_timeout 60;

@rvagg
Copy link
Member Author

rvagg commented Oct 26, 2016

k, have done that on http://dist.libuv.org/, http://coverage.nodejs.org/ (just the port 80 redirect) and http://benchmarking.nodejs.org/ (ditto port 80 redirect), if someone with a decent ipv6 setup could report back on how well that's working it'd be appreciated.

@rvagg rvagg merged commit e68a7a8 into master Oct 26, 2016
@rvagg rvagg deleted the www-update branch October 26, 2016 02:08
@txdv
Copy link

txdv commented Oct 26, 2016

txdv | Dani-hp: can you test now if it works correctly?
Dani-hp | yep looking good now
Dani-hp | thanks guys

The guy reporting the problem says it is working now.

@AMDmi3
Copy link

AMDmi3 commented Oct 26, 2016

I also confirm the fix 👍

@mhdawson mhdawson mentioned this pull request Jan 24, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants